/**
 * Copyright © 2016-2023 The Thingsboard Authors
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
@import '../../../../../scss/constants';

.tb-widget-config {
  .tb-panel-hint {
    font-size: 12px;
    color: #808080;
  }
}

.tb-datasource-list-item {
  &.mat-mdc-list-item {
    height: auto;
    min-height: 68px;
    display: block;
    padding: 0;
  }
  &.tb-draggable {
    &.cdk-drag-preview {
      background: #fff;
    }
  }
}

.tb-datasource-params {
  position: relative;
  padding: 0 0 0 10px;
  margin: 5px;
  tb-error.tb-datasource-error {
    position: absolute;
    bottom: 4px;
    left: 8px;
  }
  .tb-datasource-section {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    flex: 1;
    padding-top: 20px;
    @media #{$mat-gt-sm} {
      flex-direction: row;
      align-items: center;
      justify-content: flex-start;
    }
  }
  .tb-datasource-type {
    min-width: 160px;
    @media #{$mat-gt-sm} {
      max-width: 160px;
    }
  }
  .tb-datasource {
    @media #{$mat-gt-sm} {
      padding-left: 8px;
      width: 208px;
      max-width: 208px;
    }
  }
  .tb-data-keys {
    @media #{$mat-gt-sm} {
      padding-left: 8px;
    }
  }
}

:host {
  .tb-widget-config {
    .tb-advanced-widget-config {
      height: 100%;
    }
    .tb-datasources {

      .handle {
        cursor: move;
      }

      .mat-mdc-list {
        min-height: 68px;
        padding-left: 0;
      }
    }
    .fields-group {
      padding: 0 16px 8px;
      margin-bottom: 10px;
      border: 1px groove rgba(0, 0, 0, .25);
      border-radius: 4px;
      legend {
        color: rgba(0, 0, 0, .7);
        width: fit-content;
      }
    }
    .fields-group-slider {
      padding: 0;
      legend {
        margin-left: 16px;
      }
      .tb-settings {
        padding: 0 16px 8px;
      }
    }
    .tb-widget-style {
      margin-top: 16px;
    }
  }
}

:host ::ng-deep {
  .tb-widget-config {
    tb-alarm-filter-config {
      .mdc-button {
        width: 100%;
        height: 100%;
        justify-content: flex-start;
      }
    }
    .mat-mdc-tab-body-wrapper {
      position: absolute;
      top: 49px;
      left: 0;
      right: 0;
      bottom: 0;
    }
    .mat-expansion-panel {
      &.tb-settings {
        box-shadow: none;
        .mat-content {
          overflow: visible;
        }
        .mat-expansion-panel-header {
          padding: 0;
          &:hover {
            background: none;
          }
          .mat-expansion-indicator {
            padding: 2px;
          }
        }
        .mat-expansion-panel-header-description {
          align-items: center;
        }
        > .mat-expansion-panel-content {
          > .mat-expansion-panel-body {
            padding: 0;
          }
        }
        .tb-json-object-panel, .tb-css-content-panel {
          margin: 0 0 8px;
        }
      }
      &.tb-datasources {
        &.mat-expanded {
          overflow: visible;
        }
        .mat-expansion-panel-body{
          padding: 0 12px 16px;
        }
      }
      .mat-expansion-panel-content {
        font: inherit;
      }
    }
    .mat-slide {
      margin: 8px 0;
    }
    .slide-block {
      display: block;
      &:not(:last-child) {
        margin-bottom: 8px;
      }
    }
  }
}
